package com.dms.common.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@Data
@Configuration
@ConfigurationProperties(prefix = "jwt")
public class JwtConfig {
    /**
     * JWT密钥
     */
    private String secret;

    /**
     * 访问令牌过期时间（毫秒）
     */
    private Long accessTokenExpiration = 3600000L; // 默认1小时

    /**
     * 刷新令牌过期时间（毫秒）
     */
    private Long refreshTokenExpiration = 604800000L; // 默认7天

    /**
     * 令牌前缀
     */
    private String tokenPrefix = "Bearer ";

    /**
     * 令牌头部
     */
    private String headerString = "Authorization";

    /**
     * 兼容旧配置的过期时间字段
     * @deprecated 使用 accessTokenExpiration 替代
     */
    @Deprecated
    public void setExpiration(Long expiration) {
        this.accessTokenExpiration = expiration;
    }

    /**
     * 兼容旧配置的过期时间字段
     * @deprecated 使用 accessTokenExpiration 替代
     */
    @Deprecated
    public Long getExpiration() {
        return this.accessTokenExpiration;
    }
} 